<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>图书列表展示</title>
    <link rel="stylesheet" href="css/bootstrap.min.css">

    <link rel="stylesheet" href="css/list.css">
    <script type="text/javascript" src="js/jquery.min.js"></script>
    <script type="text/javascript" src="js/bootstrap.min.js"></script>
    <script src="js/jq-paginator.js"></script>

</head>

<body>
    <div class="bookContainer">
        <h2>图书列表展示</h2>
        <div class="navbar-justify-between">
            <div>
                <button class="btn btn-outline-info" type="button" onclick="location.href='book_add.html'">添加图书</button>
                <button class="btn btn-outline-info" type="button" onclick="batchDelete()">批量删除</button>
            </div>
        </div>

        <table>
            <thead>
                <tr>
                    <td>选择</td>
                    <td class="width100">图书ID</td>
                    <td>书名</td>
                    <td>作者</td>
                    <td>数量</td>
                    <td>定价</td>
                    <td>出版社</td>
                    <td>状态</td>
                    <td class="width200">操作</td>
                </tr>
            </thead>
            <tbody>
                <!-- <tr>
                    <td><input type="checkbox" name="selectBook" value="1" id="selectBook" class="book-select"></td>
                    <td>1</td>
                    <td>大秦帝国第一册</td>
                    <td>我是作者</td>
                    <td>23</td>
                    <td>33.00</td>
                    <td>北京出版社</td>
                    <td>可借阅</td>
                    <td>
                        <div class="op">
                            <a href="book_update.html?id=1">修改</a>
                            <a href="javascript:void(0)" onclick="deleteBook(1)">删除</a>
                        </div>
                    </td>
                </tr> -->

            </tbody>
        </table>

        <div class="demo">
            <ul id="pageContainer" class="pagination justify-content-center"></ul>
        </div>
        <script>

            getBookList();
            function getBookList() {
                $.ajax({
                    type:"get",
                    url:"/book/getListByPage"+location.search,
                    success:function(body){//获取后端的books的所有html片段
                        if(body.code == "NOLOGIN"){
                            location.href = "login.html";
                        }
                        var result = body.data; //获取后端返回的结果
                        if(result == null){
                            return;
                        }
                        //-----------------
                        var books = result.items;
                        if(books == null){
                            return;
                        }    
                        var finalHtml = ""; //拼接html片段
                        for(var book of books){
                            //拼接html片段
                            //为了省事,不使用转义字符,所以用单引号来拼接
                            finalHtml += '<tr>';
                            finalHtml += '<td><input type="checkbox" name="selectBook" value="'+book.id+'" id="selectBook" class="book-select"></td>';//选择框,根据id进行选择
                            finalHtml += '<td>'+book.id +'</td>';
                            finalHtml += '<td>'+book.bookName+'</td>';
                            finalHtml += '<td>'+book.author+'</td>';
                            finalHtml += '<td>'+book.count+'</td>';
                            finalHtml += '<td>'+book.price+'</td>';
                            finalHtml += '<td>'+book.publish+'</td>';
                            finalHtml += '<td>'+book.stateCN+'</td>';
                            finalHtml += '<td>';
                            finalHtml += '<div class="op">';
                            finalHtml += '<a href="book_update.html?bookId='+book.id+'">修改</a>';
                            finalHtml += '<a href="javascript:void(0)" onclick="deleteBook('+book.id+')">删除</a>';
                            finalHtml += '</div>';                            
                            finalHtml += '</td></tr>';   //
                        }
                        $("tbody").html(finalHtml);

                        //翻页信息
                        $("#pageContainer").jqPaginator({
                            totalCounts: result.count, //总记录数
                            pageSize: 10,    //每页的个数
                            visiblePages: 5, //可视页数
                            currentPage: result.requestPage.currentPage,  //当前页码->通过后端调用前端请求的对象来获取当前页的页码
                            first: '<li class="page-item"><a class="page-link">首页</a></li>',
                            prev: '<li class="page-item"><a class="page-link" href="javascript:void(0);">上一页<\/a><\/li>',
                            next: '<li class="page-item"><a class="page-link" href="javascript:void(0);">下一页<\/a><\/li>',
                            last: '<li class="page-item"><a class="page-link" href="javascript:void(0);">最后一页<\/a><\/li>',
                            page: '<li class="page-item"><a class="page-link" href="javascript:void(0);">{{page}}<\/a><\/li>',
                            //页面初始化和页码点击时都会执行
                            onPageChange: function (page, type) {
                                //init 第一页
                                //change 跳转到第 page 页
                                console.log("第"+page+"页, 类型:"+type);
                                if(type == "change"){
                                    //表示翻页
                                    location.href = "book_list.html?currentPage="+page;
                                }
                            }
                        });
                    },
                    error:function (err){
                        if(err.status == 401){
                            //用户未登录
                            alert("请先登录");
                            location.href = "login.html";
                        }
                        //console.log(err);
                    }
                })

            }
    

            function deleteBook(id) {
                var isDelete = confirm("确认删除?");
                if (isDelete) {
                    //删除图书
                    // alert("删除成功");
                    $.ajax({
                        url:"book/deleteBook",
                        type:"post",
                        data:{
                            bookId : id
                        },
                        //前端向后端发送请求成功,后端返回结果
                        success:function (result){
                            if (result != null && result.data == true){
                                alert("删除成功");
                                //跳转到删除后的图书列表
                                location.href = "book_list.html";
                            }else{
                                alert("删除失败");
                            }
                        }
                    })
                }
            }
            function batchDelete() {
                var isDelete = confirm("确认批量删除?");
                if (isDelete) {
                    //获取复选框的id
                    var ids = [];
                    $("input:checkbox[name='selectBook']:checked").each(function () {
                        ids.push($(this).val());
                    });
                    console.log(ids);

                    //alert("批量删除成功");
                    //前端向后端发送ajax请求,批量删除图书
                    $.ajax({
                        url:"book/batchDelete",
                        type:"post",
                        data:{
                            ids : ids
                        },
                        //前端向后端发送请求成功,后端返回结果
                        success:function (result){
                            if (result != null && result.data == true){
                                alert("批量删除成功");
                                //跳转到删除后的图书列表
                                location.href = "book_list.html";
                            }else{
                                alert("批量删除失败");
                            }
                        }
                    });
                }
            }

        </script>
    </div>
</body>

</html>